`:top
`*`!Remote method invocation`!`*, plus connu sous l'acronyme `!RMI`! est une `F33f`_`[interface de programmation`:/page/wikibook/entry.mu`zim=wikipedia_fr_all_nopic_2025-10.zim|entry_path=Interface_de_programmation]`_`f (API) pour le `F33f`_`[langage Java`:/page/wikibook/entry.mu`zim=wikipedia_fr_all_nopic_2025-10.zim|entry_path=Java_(langage)]`_`f qui permet d'appeler des méthodes distantes, sur le principe des `F33f`_`[ORB`:/page/wikibook/entry.mu`zim=wikipedia_fr_all_nopic_2025-10.zim|entry_path=Object_request_broker]`_`f. L'utilisation de cette API nécessite l'emploi d'un `F33f`_`[registre`:/page/wikibook/entry.mu`zim=wikipedia_fr_all_nopic_2025-10.zim|entry_path=Registre_de_métadonnées]`_`f RMI sur la machine distante hébergeant ces objets que l'on désire appeler au niveau duquel ils ont été enregistrés. Cette `F33f`_`[interface de programmation`:/page/wikibook/entry.mu`zim=wikipedia_fr_all_nopic_2025-10.zim|entry_path=Interface_de_programmation]`_`f est très souvent utilisée en parallèle avec l'API d'annuaire `F33f`_`[JNDI`:/page/wikibook/entry.mu`zim=wikipedia_fr_all_nopic_2025-10.zim|entry_path=Java_Naming_and_Directory_Interface]`_`f ou encore avec la spécification de composants distribués transactionnels `F33f`_`[EJB`:/page/wikibook/entry.mu`zim=wikipedia_fr_all_nopic_2025-10.zim|entry_path=Enterprise_JavaBeans]`_`f du langage Java.
Cette bibliothèque, qui se trouve en standard dans `F33f`_`[Java SE`:/page/wikibook/entry.mu`zim=wikipedia_fr_all_nopic_2025-10.zim|entry_path=Java_SE]`_`f, permet la communication via le protocole `F33f`_`[HTTP`:/page/wikibook/entry.mu`zim=wikipedia_fr_all_nopic_2025-10.zim|entry_path=Hypertext_Transfer_Protocol]`_`f (ou `F33f`_`[IIOP`:/page/wikibook/entry.mu`zim=wikipedia_fr_all_nopic_2025-10.zim|entry_path=Internet_Inter-ORB_Protocol]`_`f, depuis la version 1.3 du JDK) entre des objets Java éloignés physiquement les uns des autres, autrement dit s'exécutant sur des `F33f`_`[machines virtuelles java`:/page/wikibook/entry.mu`zim=wikipedia_fr_all_nopic_2025-10.zim|entry_path=Machine_virtuelle_Java]`_`f distinctes. RMI facilite le développement des applications distribuées en masquant au développeur la communication client / serveur.
Cette bibliothèque entre en concurrence avec la norme `F33f`_`[CORBA`:/page/wikibook/entry.mu`zim=wikipedia_fr_all_nopic_2025-10.zim|entry_path=Common_Object_Request_Broker_Architecture]`_`f maintenue par l'`F33f`_`[Object Management Group`:/page/wikibook/entry.mu`zim=wikipedia_fr_all_nopic_2025-10.zim|entry_path=Object_Management_Group]`_`f, et les produits qui la respectent, ou avec la technologie `F33f`_`[RPC`:/page/wikibook/entry.mu`zim=wikipedia_fr_all_nopic_2025-10.zim|entry_path=Appel_de_procédure_à_distance]`_`f dont l'un des acteurs est `F33f`_`[Microsoft`:/page/wikibook/entry.mu`zim=wikipedia_fr_all_nopic_2025-10.zim|entry_path=Microsoft]`_`f.
>>Contents
• `F0af`_`[Technologies`#technologies]`_`f
• `F0af`_`[Bibliographie`#bibliographie]`_`f
• `F0af`_`[Voir aussi`#voir-aussi]`_`f
• `F0af`_`[Articles connexes`#articles-connexes]`_`f
• `F0af`_`[Liens externes`#liens-externes]`_`f
-─
>>Technologies
RMI est basé sur `F33f`_`[TCP-IP`:/page/wikibook/entry.mu`zim=wikipedia_fr_all_nopic_2025-10.zim|entry_path=Suite_des_protocoles_Internet]`_`f, le Java Remote Method Protocol (JRMP). Une `F33f`_`[interopérabilité`:/page/wikibook/entry.mu`zim=wikipedia_fr_all_nopic_2025-10.zim|entry_path=Interopérabilité]`_`f avec CORBA est assurée par RMI-IIOP.
Jusqu'à la version 5.0 du JSE, il fallait utiliser un `F33f`_`[compilateur`:/page/wikibook/entry.mu`zim=wikipedia_fr_all_nopic_2025-10.zim|entry_path=Compilateur]`_`f de souche (stub) appelé `F33f`_`[RMIC`:/page/wikibook/entry.mu`zim=wikipedia_fr_all_nopic_2025-10.zim|entry_path=RMIC]`_`f avant tout enregistrement sur le registre RMI. Désormais, il est possible de les générer dynamiquement.
>>Bibliographie
• Annick Fron (`F33f`_`[2007`:/page/wikibook/entry.mu`zim=wikipedia_fr_all_nopic_2025-10.zim|entry_path=2007]`_`f). `*Architectures réparties en Java`*, (`F33f`_`[ISBN`:/page/wikibook/entry.mu`zim=wikipedia_fr_all_nopic_2025-10.zim|entry_path=International_Standard_Book_Number]`_`f 978-2-10-051141-9).
>>Voir aussi
>>>Articles connexes
• `F33f`_`[Object Request Broker`:/page/wikibook/entry.mu`zim=wikipedia_fr_all_nopic_2025-10.zim|entry_path=Object_Request_Broker]`_`f (ou ORB)
• `F33f`_`[Remote procedure call`:/page/wikibook/entry.mu`zim=wikipedia_fr_all_nopic_2025-10.zim|entry_path=Remote_procedure_call]`_`f (ou RPC)
• `F33f`_`[Internet Inter-ORB Protocol`:/page/wikibook/entry.mu`zim=wikipedia_fr_all_nopic_2025-10.zim|entry_path=Internet_Inter-ORB_Protocol]`_`f (ou IIOP)
• `F33f`_`[Architecture orientée services`:/page/wikibook/entry.mu`zim=wikipedia_fr_all_nopic_2025-10.zim|entry_path=Architecture_orientée_services]`_`f (ou SOA)
>>>Liens externes
• Remote Method Invocation Home sur le site d'Oracle
• Portail de l’informatique
`c`F0af`_`[↑ Back to top`#top]`_`f`a